1. Field of the Invention
The present invention relates generally to the field of home networking, and more particularly to Universal Plug and Play (UPnP) enabled telephony devices.
2. Description of Related Art
UPnP telephony service allows access to telephony services using home devices. This provides a user with flexibility to access telephony services at home using different kinds of devices. The UPnP is a set of computer network protocols promulgated by the UPnP forum. The goals of UPnP telephony are to allow home devices to connect seamlessly and to simplify implementation of networks in the home (for example, data sharing, communications, and entertainment) and corporate environments. The UPnP achieves these goals by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
The UPnP architecture allows peer-to-peer networking of Personal Computers (PCs), networked appliances, and wireless devices. The UPnP architecture is a distributed, open architecture based on established standards such as Transmission Control Protocol or Internet Protocol (TCP/IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP) and Extensible Markup Language (XML).
The UPnP architecture supports zero-configuration networking. An UPnP compatible device from any vendor can dynamically join a network, obtain an IP address, announce its name, convey its capabilities upon request, and learn about the presence and capabilities of other devices. Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS) servers are optional and are only used if they are available on the network. The UPnP compatible device can leave the network automatically without leaving any unwanted state information.
The UPnP telephony services also provides discovery, control and event mechanisms. The discovery mechanism is enabled using Simple Service Discovery Protocol (SSDP). All control messages are in the form of XML and follow General Event Notification Architecture (GENA) protocol. Thus, the UPnP makes the availability and unavailability of the devices known to the other devices in the network on the fly.
The UPnP defines new telephony services for extending the user experience in the home to access of the telephony services, such as, messaging services, presence services, and call handling (packet switching or circuit switching).
The UPnP telephony defines the messaging service and the call management service, which allows the user to access the messaging service by, for example, sending the message using the device which does not have the messaging capability and initiating the media calls. The UPnP telephony messaging service uses the basic UPnP architecture to define the messaging service so it defines the actions and state variable to access the messaging service.
As analogous to UPnP Device Architecture (DA), the UPnP telephony services define the following three kinds of devices.
A Telephony Server (TS) provides messaging, and presence related services to the user. The TS also provides call management services.
A Telephony Control Point (TCP), which is the same as Control Point (CP), initiates the actions provided by the TS.
A Telephony Client (TC) device is for media related handling and for acting as the input and output of the device
Current messaging services allow the user to send messages, for example, messages using Short Message Service (SMS), Multimedia Message Service (MMS), Chat Instant Messaging (Chat IM) and Electronic mail (Email). The messaging services also allow the user to group the messages into one session by defining the actions to create the IM session and allowing the user to modify the existing session.
Table 1 shows a state variables list and the message service.
TABLE 1Variable NameTypeValuesNewMessageStringMessage IdsIMSessionStatusStringSession information (Session closed,Session updated, Session rejected, User typing)A_ARG_TYPE_MessageIDStringAny string (Unique string)A_ARG_TYPE_MessageClassStringEmail/SMS/MMS/Instant MessageA_ARG_TYPE_MessageFolderStringReceived/Deleted/ALL/Sent/OutgoingA_ARG_TYPE_RetrieveFlagStringMessage flag: Notified/Read/Unread/AllA_ARG_TYPE_MessageStringMessage Structure(XML Fragment)A_ARG_TYPE_MessageListStringMessage Information (message ID or(XML Fragment)Date Recipient or subject etc)
Table 2 below shows an action list and the message service.
TABLE 2Action NameDescriptionReadMessage( )Reading the message stored in the TS (Input isMessageID)ReadLastMessage( )Reading last Message in storage, (input argument:Message class, Message Folder, Retrieve Flag)GetNewMessage( )Requesting New Message IDsGetMessage( )Getting Messages Information (input para:MessageClass, Message Folder, Retrieve Flag)GetFilteredMessage( )Getting Filtered message with specified messagefilterSendMessage( )Sending the message to TSDeleteMessage( )Deleting MessageCreateIMSession( )Initiating the IM Session, Input Parameters: IMSession class, Recipients.ModifyIMSession( )Adding User, Removing users. (Media Content)AcceptIMSession( )Accepting incoming IM SessionGetIMSessonStatus( )IMsessionStatus variableGetIMSessions( )Getting all ongoing messaging on TSGetIMSessionInfo( )Retrieving session info input parameter (sessionID)CloseIMSession( )To close, leave, reject the IM Session
However, currently there is no mechanism in UPnP technology that allows the user to send a file to any Wide Area Network (WAN) user from the home network.